<?php

class ServiceSearchControls {
	
	private $promotion;
	private $name;
	private $active;
	private $types;
	private $partName;
	
	function __construct() {
		$this->types = array ();
	}
	
	/**
	 * Metoda ustawia flagę określającą czy mają być wyszukiwane usługi z przypisanymi promocjami
	 * @param $flag flaga określająca czy maja być wyszukiwane usługi z przypisanymi promocjami
	 */
	public function setPromotion($flag) {
		$this->promotion = $flag;
	}
	
	/**
	 * Metoda zwraca flagę określająca czy maja być wyszukiwane usługi z przypisanymi promocjami
	 * @return flaga określająca czy maja być wyszukiwane usługi z przypisanymi promocjami
	 */
	public function isPromotion() {
		return $this->promotion;
	}
	
	/**
	 * Metoda ustawia nazwe usługi do wyszukania
	 * @param $name nazwa usługi do wyszukania
	 */
	function setName($name) {
		$this->name = $name;
	}
	
	/**
	 * Metoda zwraca nazwe usługi do wyszukania
	 * @return nazwe usługi do wyszukania
	 */
	function getName() {
		return $this->name;
	}
	/**
	 * Metoda zwraca liste typów częsci uslugi na podstawie ktorych ma zostac ona wyszukana
	 * @return lista typów częsci uslugi na podstawie ktorych ma zostac ona wyszukana
	 */
	function getTypes() {
		return $this->types;
	}
	
	/**
	 * Metoda dodaje typ częsci uslugi
	 * @param $type typ częsci uslugi 
	 */
	function addType($type) {
		$this->types [] = $type;
	}
	
	/**
	 * Metoda ustawia flagę okreslajaca czy maja być wyszukiwana aktywne uslugi
	 * @param $active flaga okreslajaca czy maja być wyszukiwana aktywne uslugi
	 */
	function setActive($active) {
		$this->active = $active;
	}
	
	/**
	 * Metoda zwraca flagę okreslajaca czy maja być wyszukiwana aktywne uslugi
	 * @return flaga okreslajaca czy maja być wyszukiwana aktywne uslugi
	 */
	function isActive() {
		return $this->active;
	}
	
	/**
	 * Metoda ustawia nazwę części usługi
	 * @param $partName nazwa części usługi
	 */
	function setPartName($partName) {
		$this->partName = $partName;
	}
	
	/**
	 * Metoda zwraca nazwę części usługi
	 * @return nazwa części usługi
	 */
	function getPartName() {
		return $this->partName;
	}

}
?>